From e6dd08d983d4a05a55d6c98a30e99f2c8b9a748b Mon Sep 17 00:00:00 2001 From: "cl349@firebug.cl.cam.ac.uk" Date: Thu, 15 Sep 2005 19:46:14 +0000 Subject: [PATCH] Simplify backend flag parsing. Signed-off-by: Christian Limpach --- tools/python/xen/xend/XendDomainInfo.py | 21 ++++++++++++++------- tools/python/xen/xend/image.py | 14 +------------- 2 files changed, 15 insertions(+), 20 deletions(-) diff --git a/tools/python/xen/xend/XendDomainInfo.py b/tools/python/xen/xend/XendDomainInfo.py index 584bc205b0..4f645576f1 100644 --- a/tools/python/xen/xend/XendDomainInfo.py +++ b/tools/python/xen/xend/XendDomainInfo.py @@ -88,6 +88,15 @@ STATE_VM_OK = "ok" STATE_VM_TERMINATED = "terminated" STATE_VM_SUSPENDED = "suspended" +"""Flag for a block device backend domain.""" +SIF_BLK_BE_DOMAIN = (1<<4) + +"""Flag for a net device backend domain.""" +SIF_NET_BE_DOMAIN = (1<<5) + +"""Flag for a TPM device backend domain.""" +SIF_TPM_BE_DOMAIN = (1<<7) + def domain_exists(name): # See comment in XendDomain constructor. @@ -243,10 +252,8 @@ class XendDomainInfo: self.controllers = {} self.info = None - self.blkif_backend = False - self.netif_backend = False + self.backend_flags = 0 self.netif_idx = 0 - self.tpmif_backend = False #todo: state: running, suspended self.state = STATE_VM_OK @@ -1014,13 +1021,13 @@ class XendDomainInfo: v = sxp.child0(c) name = sxp.name(v) if name == 'blkif': - self.blkif_backend = True + self.backend_flags |= SIF_BLK_BE_DOMAIN elif name == 'netif': - self.netif_backend = True + self.backend_flags |= SIF_NET_BE_DOMAIN elif name == 'usbif': - self.usbif_backend = True + pass elif name == 'tpmif': - self.tpmif_backend = True + self.backend_flags |= SIF_TPM_BE_DOMAIN else: raise VmError('invalid backend type:' + str(name)) diff --git a/tools/python/xen/xend/image.py b/tools/python/xen/xend/image.py index 216973354b..36b3db236b 100644 --- a/tools/python/xen/xend/image.py +++ b/tools/python/xen/xend/image.py @@ -27,15 +27,6 @@ from xen.xend.xenstore.xstransact import xstransact from xen.xend.server import channel -"""Flag for a block device backend domain.""" -SIF_BLK_BE_DOMAIN = (1<<4) - -"""Flag for a net device backend domain.""" -SIF_NET_BE_DOMAIN = (1<<5) - -"""Flag for a TPM device backend domain.""" -SIF_TPM_BE_DOMAIN = (1<<7) - MAX_GUEST_CMDLINE = 1024 class ImageHandler: @@ -192,10 +183,7 @@ class ImageHandler: return # Set params and call buildDomain(). - self.flags = 0 - if self.vm.netif_backend: self.flags |= SIF_NET_BE_DOMAIN - if self.vm.blkif_backend: self.flags |= SIF_BLK_BE_DOMAIN - if self.vm.tpmif_backend: self.flags |= SIF_TPM_BE_DOMAIN + self.flags = self.vm.backend_flags if not os.path.isfile(self.kernel): raise VmError('Kernel image does not exist: %s' % self.kernel) -- 2.30.2